﻿// Inner Fire 游戏引擎库
// StopWatch - 简单秒表
//
// Copyright (c) 2025 by 尔西大帝. All rights reserved.
//
// 所属层级：基础结构层(1)
// 用于记录时间。
//
// Author: 尔西大帝
// Email: 2670613871@qq.com
// Created: 2025-01-16

#include "stop_watch.h"
#include <kits.h>
#include <klog.h>

namespace ikit {

Stopwatch loader_stopwatch{};

void start_stopwatch() { loader_stopwatch.Start(); }
void close_stopwatch(const char* program_name) {
  loader_stopwatch.Stop();
  KLOG("%s 用时 %.2fs", program_name,
      loader_stopwatch.GetElapsedMilliseconds() * 0.001f);
  loader_stopwatch.Start();
}

void Stopwatch::Flush(const char* title) {
  Stop();
  KLOG("%s: %.2fs", title, GetElapsedMilliseconds() * 0.001f);
  Start();
}

} // namespace ikit
